.\"
.\" FreeBSD pkg - a next generation package for the installation and
.\" maintenance of non-core utilities.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\"
.\"     @(#)pkg.8
.\"
.Dd October 30, 2014
.Dt PKG-UPDATE 8
.Os
.Sh NAME
.Nm "pkg update"
.Nd update the local catalogues of the enabled package repositories
.Sh SYNOPSIS
.Nm
.Op Fl fq
.Op Fl r Ar reponame
.Pp
.Nm
.Op Cm --{force,quiet}
.Op Cm --repository Ar reponame
.Sh DESCRIPTION
.Nm
is used for updating the local copy of the repository catalogues
from the remote package repository databases.
Updates to catalogues are normally downloaded only when the master
copy on the remote package repository is newer than the local copy.
.Pp
The repository catalogues to be updated are defined in the
.Xr pkg.conf 5
file or by the entries in
.Pa /usr/local/etc/pkg/repos .
See
.Xr pkg.conf 5
for details.
.Pp
It is best practice to ensure your package repository catalogues are
up to date before doing any package installation (via
.Xr pkg-install 8 )
or upgrades (via
.Xr pkg-upgrade 8 ) .
However, explicitly running
.Nm
is not normally necessary.
By default invoking either of
.Nm pkg install
or
.Nm pkg upgrade
will cause repository
catalogues to be updated automatically, unless disabled by setting
.Ev REPO_AUTOUPDATE
to false in
.Xr pkg.conf 5 .
.Pp
.Ss Signed repositories
If the repository catalogue is signed and
.Ev PUBKEY
is defined for the repository, the signature will be verified after download.
See
.Xr pkg.conf 5
for more information.
.Sh OPTIONS
The following options are supported by
.Nm :
.Bl -tag -width quiet
.It Fl q , Cm --quiet
Force quiet output.
.It Fl f , Cm --force
Force a full download of the repository catalogue without regard to the
respective ages of the local and remote copies of the catalogue.
.It Fl r Ar reponame , Cm --repository Ar reponame
Download the catalogue for the named repository only.
This will update only the named repository, irrespective of the configured
.Dq active
status from
.Pa repo.conf .
.El
.Sh ENVIRONMENT
The following environment variables affect the execution of
.Nm .
See
.Xr pkg.conf 5
for further description.
.Bl -tag -width ".Ev NO_DESCRIPTIONS"
.It Ev PKG_DBDIR
.It Ev REPO_AUTOUPDATE
.El
.Sh FILES
See
.Xr pkg.conf 5 .
.Sh SEE ALSO
.Xr pkg_printf 3 ,
.Xr pkg_repos 3 ,
.Xr pkg-repository 5 ,
.Xr pkg.conf 5 ,
.Xr pkg 8 ,
.Xr pkg-add 8 ,
.Xr pkg-alias 8 ,
.Xr pkg-annotate 8 ,
.Xr pkg-audit 8 ,
.Xr pkg-autoremove 8 ,
.Xr pkg-backup 8 ,
.Xr pkg-check 8 ,
.Xr pkg-clean 8 ,
.Xr pkg-config 8 ,
.Xr pkg-create 8 ,
.Xr pkg-delete 8 ,
.Xr pkg-fetch 8 ,
.Xr pkg-info 8 ,
.Xr pkg-install 8 ,
.Xr pkg-lock 8 ,
.Xr pkg-query 8 ,
.Xr pkg-register 8 ,
.Xr pkg-repo 8 ,
.Xr pkg-rquery 8 ,
.Xr pkg-search 8 ,
.Xr pkg-set 8 ,
.Xr pkg-shell 8 ,
.Xr pkg-shlib 8 ,
.Xr pkg-ssh 8 ,
.Xr pkg-stats 8 ,
.Xr pkg-updating 8 ,
.Xr pkg-upgrade 8 ,
.Xr pkg-version 8 ,
.Xr pkg-which 8
